Colin Walters [Tue, 16 Dec 2014 03:23:37 +0000 (22:23 -0500)]
Use *at() functions for native filesystem commits
This is just an efficiency optimization. We're getting fairly close
to all of the hot code paths using `*at()`.
Note that we end up maintaining a half-duplicate code path set here,
because we still need to support commits from an arbitrary GFile *,
which in a possible common case is an OSTree commit.
I think it's worth it though.
Colin Walters [Tue, 6 Jan 2015 23:47:04 +0000 (18:47 -0500)]
refs: Use G_IO_ERROR_NOT_FOUND when a ref lookup fails
rpm-ostree had code to check for this, which didn't actually work.
I don't see a no backwards compatibility concern in changing this, as
it's unlikely a caller would try to sensibly disambiguate FAILED.
Colin Walters [Tue, 6 Jan 2015 21:47:03 +0000 (16:47 -0500)]
repo: Improve ostree_repo_load_file() to use `*at()` for xattrs
We were already using openat() for the contents, but not the xattrs.
Now that libgsystem 2014.3 has gs_fd_get_all_xattrs(), make use of it.
Clean things up a bit so we only open the fd once.
Colin Walters [Sat, 3 Jan 2015 17:03:36 +0000 (12:03 -0500)]
deploy: Update to use latest libgsystem API
Colin Walters [Sat, 3 Jan 2015 17:14:11 +0000 (12:14 -0500)]
deploy: Actually copy xattrs of modified config files
Regression from
7b01bd2e4333d4346dd08e0b5caf672f56b1ccfd
where we stopped using g_file_copy() - we lost copying xattrs.
This specifically breaks /etc/shadow SELinux labeling, with the
obvious bad consequences.
https://bugzilla.gnome.org/show_bug.cgi?id=742289
Matthew Barnes [Tue, 6 Jan 2015 14:36:45 +0000 (09:36 -0500)]
Require a PREFIX when deleting refs
Also fix the "ostree refs" help output to not give the impression that
the --delete option takes its own PREFIX argument.
https://bugzilla.gnome.org/show_bug.cgi?id=742454
Colin Walters [Mon, 5 Jan 2015 02:17:11 +0000 (21:17 -0500)]
Port to libgsystem errno API, hard depend on 2014.3
This is long overdue to make it to libgsystem. Update our dependency.
Colin Walters [Fri, 19 Dec 2014 21:31:31 +0000 (16:31 -0500)]
Merge branch 'giuseppe/staticdeltas' of https://github.com/giuseppe/ostree
Colin Walters [Fri, 19 Dec 2014 01:10:25 +0000 (20:10 -0500)]
Enforce 'rdev' (device file major/minor) is 0
Historically OSTree supported device files, but it wasn't useful, and
added attack surface. Support was removed in
https://git.gnome.org/browse/ostree/commit/?id=
62a896350bd54bff5a9413d2ee0fad7ff4364f9a
Perform a further cleanup by enforcing internally that the device
major/minor must be 0.
Conflicts:
src/libostree/ostree-core.c
Colin Walters [Wed, 17 Dec 2014 02:14:10 +0000 (21:14 -0500)]
core: Deduplicate code converting struct stat -> GFileInfo
We were doing the same thing in a number of places, make a helper
function.
Matthew Barnes [Thu, 18 Dec 2014 15:06:47 +0000 (10:06 -0500)]
Add ostree_repo_pull_default_console_progress_changed()
Replaces ot_common_pull_progress() in ostree binary, so it can be shared
with rpm-ostree.
Colin Walters [Tue, 16 Dec 2014 03:55:56 +0000 (22:55 -0500)]
repo: Minor cleanup: Move size generation code initialization
It has a global effect, so do it in the entrypoint.
Giuseppe Scrivano [Thu, 11 Dec 2014 09:41:52 +0000 (10:41 +0100)]
Remove unused variable warning
Giuseppe Scrivano [Thu, 30 Oct 2014 13:23:34 +0000 (14:23 +0100)]
fix --help for static-delta
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Tue, 24 Jun 2014 11:58:13 +0000 (07:58 -0400)]
test-rollsum: Process all input, print more statistics
Copying the bup code, we need to loop over all chunks even after
hitting the rollsum returning 0.
Also print more statistics.
Colin Walters [Sun, 9 Feb 2014 21:11:37 +0000 (16:11 -0500)]
Static deltas support
https://bugzilla.gnome.org/show_bug.cgi?id=721799
Giuseppe Scrivano [Tue, 11 Nov 2014 09:36:37 +0000 (10:36 +0100)]
Revert "ostree-repo-pull: Remove currently #if 0 static delta code"
This reverts commit
1c2e20af25b21abc0dee1547a0d5bad1a21c0b58.
Matthew Barnes [Thu, 18 Dec 2014 00:20:17 +0000 (19:20 -0500)]
doc: Update gtk-docs
Matthew Barnes [Tue, 16 Dec 2014 15:41:34 +0000 (10:41 -0500)]
Add "ostree remote list" command
Lists available remote names.
Matthew Barnes [Tue, 16 Dec 2014 15:29:09 +0000 (10:29 -0500)]
Add ostree_repo_remote_list()
Lists available remote names.
Colin Walters [Wed, 17 Dec 2014 16:35:52 +0000 (11:35 -0500)]
Release 2014.13
Colin Walters [Wed, 17 Dec 2014 16:34:10 +0000 (11:34 -0500)]
basic-test: Fixup mtime check for bare-user
https://bugzilla.gnome.org/show_bug.cgi?id=741662
Colin Walters [Wed, 17 Dec 2014 15:43:01 +0000 (10:43 -0500)]
tests: Fix two bugs in tests revealed by new remote changes
Colin Walters [Mon, 15 Dec 2014 21:21:15 +0000 (16:21 -0500)]
Add more flexible _remote_change() API , expose via 'ostree remote'
For Anaconda, I needed OSTREE_REPO_REMOTE_CHANGE_ADD_IF_NOT_EXISTS,
with the GFile *sysroot argument to avoid ugly hacks. We want to
write the content provided via "ostreesetup" as a remote to the target
chroot only in the case where it isn't provided as part of the tree
content itself.
This is also potentially useful in idempotent systems management tools
like Ansible.
https://bugzilla.gnome.org/show_bug.cgi?id=741577
Colin Walters [Mon, 15 Dec 2014 18:59:46 +0000 (13:59 -0500)]
repo: (cleanup) Use _is_system() rather than inlining it
No reason to duplicate the code.
Matthew Barnes [Thu, 4 Dec 2014 18:37:26 +0000 (13:37 -0500)]
Improve "ostree remote" help output
Must have glossed over these because the commands are so simple.
- List subcommands for "ostree remote --help".
- Only show options relevant to COMMAND for
"ostree remote COMMAND --help".
Colin Walters [Mon, 8 Dec 2014 19:44:44 +0000 (14:44 -0500)]
trivial-httpd: use PR_SET_PDEATHSIG by default
If we're not daemonizing, this is a useful way to ensure we go away if
our parent does.
https://bugzilla.gnome.org/show_bug.cgi?id=741264
Alexander Larsson [Mon, 8 Dec 2014 19:26:58 +0000 (20:26 +0100)]
test-local-pull: Sort find output to make test robust
There is no guarantee that find will produce output in the same
order, so we need to sort the output to ensure we always
get the same output.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Matthew Barnes [Thu, 4 Dec 2014 20:38:36 +0000 (15:38 -0500)]
repo: Add private functions to access remote options
ostree_repo_pull_with_options() needs this, and I'd rather keep the
OstreeRemote struct definition tucked away in ostree-repo.c with its
own internal API.
Matthew Barnes [Thu, 4 Dec 2014 00:46:03 +0000 (19:46 -0500)]
repo: Add ostree_repo_remote_get_url()
Peeking at remote details by way of ostree_repo_copy_config() doesn't
work anymore.
Matthew Barnes [Wed, 3 Dec 2014 23:58:16 +0000 (18:58 -0500)]
repo: Add an internal struct to manage remotes
OstreeRemote is a reference-counted struct that encompasses data about a
remote, whether read from a configuration file or created explicitly via
ostree_repo_remote_add().
OstreeRemotes are held in an internal table indexed by remote name.
This solves some problems caused by merging system-wide remote data into
the OstreeRepo's internal config key file.
Also fixes https://bugzilla.gnome.org/show_bug.cgi?id=740911
Matthew Barnes [Wed, 3 Dec 2014 22:16:48 +0000 (17:16 -0500)]
libotutil: Add ot_keyfile_copy_group()
Copies all the keys of a group from one GKeyFile to another.
Alexander Larsson [Mon, 8 Dec 2014 11:00:59 +0000 (12:00 +0100)]
Add local-pull archive-z2 <=> bare-user roundtrip test
This creates a archive-z2 repo, pull-locals it to bare-user and then
again back to archive-z2 making sure things fsck along the way.
Then it checks out all repos and makes sure each one reproduces
the same result.
Unfortunately we can't install this as a real test because
it doesn't work in the test-runner because tmpfs doesn't support
user xattrs.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Alexander Larsson [Fri, 5 Dec 2014 13:40:15 +0000 (14:40 +0100)]
Add test-basic-user.sh testing for bare-user repos
This just does whatever test-basic.sh does, but on a bare-user
repo.
This works standalone, but unfortunately it breaks in
gnome-desktop-testing-runner as /tmp doesn't support
xattrs, so it is not installed atm.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Alexander Larsson [Fri, 5 Dec 2014 13:28:16 +0000 (14:28 +0100)]
Split out basic tests from test-basic.sh
This will let us reuse them with other repo types
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Alexander Larsson [Thu, 4 Dec 2014 10:11:58 +0000 (11:11 +0100)]
Support for "bare-user" repo format
This format is pretty much the same as the "bare" format, except the
file ownership and xattrs is not stored in the actual filesystem object, but
rather on the side in a user xattr. This means two things:
1) An unprivileged user can store such a repo independent of the types
of files in it or their xattrs. And you can later (as root)
reconstruct the real filesystem tree with ownership. Although you
can't do that using hardlink-sharing. This also means ostree
fsck does a full verification.
2) Such a repository can be checked out with user-mode (checkout -U)
as an unprivileged user using hardlinks for space sharing.
Additionally, symlinks are stored as regular files (with the content
being the symlink target) because user xattrs are not supported on
symlinks. We know at checkout time if the file is a symlink because
the original st_mode is stored in the xattr metadata.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Alexander Larsson [Wed, 3 Dec 2014 09:58:41 +0000 (10:58 +0100)]
Add ot_lgetxattrat and ot_lsetxattrat utils
These are implementation of the missing corresponding syscalls that
are done with the /proc/self/fd mechanism described at:
https://mail.gnome.org/archives/ostree-list/2014-February/msg00017.html
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Colin Walters [Sun, 7 Dec 2014 22:19:42 +0000 (17:19 -0500)]
README.md: Add a quick blurb on style
Alexander Larsson [Fri, 5 Dec 2014 12:46:58 +0000 (13:46 +0100)]
union checkout: Fix symlink handling for xattrs
Applying xattrs on a symlink during checkout failed since
it was setting the xattrs on the final filename, not the
temporary name.
This made the "checkout union 1" test in test-basic.sh
fail.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Alexander Larsson [Thu, 4 Dec 2014 19:19:09 +0000 (20:19 +0100)]
checkout: fchown symlink to proper uid/gid
When commiting a symlink we do store the uid/gid of the actual
symlink (i.e. not target). However, this was not restored
on non-user-mode checkout as it should.
This commit fixes that, and additionally it ensures xattrs
on symlinks are not set in user-mode checkout.
https://bugzilla.gnome.org/show_bug.cgi?id=741125
Colin Walters [Mon, 1 Dec 2014 03:50:02 +0000 (22:50 -0500)]
deploy: Ensure that we can deploy using only /usr/lib/ostree-boot
rpm-ostree at least has the option to generate a tree with just that
instead of /boot, but while we were enumerating the latter, we'd still
return paths from /boot.
https://bugzilla.gnome.org/show_bug.cgi?id=740947
Kenjiro Nakayama [Tue, 25 Nov 2014 13:25:15 +0000 (22:25 +0900)]
docs: Add verbose option to manual
Colin Walters [Sun, 30 Nov 2014 18:23:06 +0000 (13:23 -0500)]
README.md: Mention patches and test suite
Colin Walters [Sat, 29 Nov 2014 17:15:21 +0000 (12:15 -0500)]
docs: Fix a pile of Docbook validation errors
At least now validates with RNG mode in Emacs.
Colin Walters [Wed, 26 Nov 2014 16:56:10 +0000 (11:56 -0500)]
Release 2014.12
Colin Walters [Tue, 25 Nov 2014 20:21:11 +0000 (15:21 -0500)]
tests: Fix u-boot test failure
This bit needs to be specific to syslinux.
Colin Walters [Tue, 25 Nov 2014 18:47:54 +0000 (13:47 -0500)]
trivial: Fix typo in previous commit
Colin Walters [Fri, 21 Nov 2014 16:37:25 +0000 (11:37 -0500)]
grub2: If using --sysroot, run in chroot
In Anaconda, we're using "ostree admin --sysroot=/mnt/sysimage
instutil set-kargs", and it was working before, but newer versions of
lorax strip out /etc/system-release which grub2 wants.
That was wrong anyways as we want the /etc/system-release from the
target root.
(Man, grub2 sucks...give me a declarative config file format I can just
write)
https://bugzilla.gnome.org/show_bug.cgi?id=740697
Matthew Barnes [Fri, 14 Nov 2014 19:00:13 +0000 (14:00 -0500)]
Refactor command-line parsing
Refactor command-line parsing to better utilize GOptionContext. This
eliminates most of the manual parsing and global options are now shown
in the help output.
Here's a sample:
$ ostree admin --help
Usage:
ostree admin [OPTION...] --print-current-dir|COMMAND
Builtin "admin" Commands:
cleanup
config-diff
deploy
init-fs
instutil
os-init
status
switch
undeploy
upgrade
Help Options:
-h, --help Show help options
Application Options:
--sysroot=PATH Create a new OSTree sysroot at PATH
-v, --verbose Print debug information during command processing
--version Print version information and exit
https://bugzilla.gnome.org/show_bug.cgi?id=740295
Matthew Barnes [Tue, 11 Nov 2014 02:28:43 +0000 (21:28 -0500)]
Various manpage / usage blurb improvements
Corrections, clarifications, consistency.
Not a comprehensive overhaul of the manpages; they do still need work.
These are just flaws I've noted while studying the ostree command syntax.
https://bugzilla.gnome.org/show_bug.cgi?id=740097
Giuseppe Scrivano [Tue, 11 Nov 2014 10:24:43 +0000 (11:24 +0100)]
ostree-fetcher: move more logic into ostree_fetcher_request_uri_internal
Make _ostree_fetcher_request_uri_with_partial_async and
ostree_fetcher_stream_uri_async simple wrapper around the same
function, all the requests are created in the same place now.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Wed, 5 Nov 2014 08:48:12 +0000 (09:48 +0100)]
ostree-fetcher: make _ostree_fetcher_stream_uri_sync private
Rename _ostree_fetcher_contents_membuf_sync to
ostree_fetcher_request_uri_to_membuf and drop unused argument
user_data.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Thu, 6 Nov 2014 13:57:25 +0000 (14:57 +0100)]
ostree-fetcher: Remove _ostree_fetcher_request_uri_to_stream function
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Thu, 6 Nov 2014 12:37:30 +0000 (13:37 +0100)]
ostree-metalink: use _ostree_fetcher_contents_membuf_sync
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Thu, 6 Nov 2014 13:53:52 +0000 (14:53 +0100)]
ostree-fetcher: add max_size argument to change _ostree_metalink_request_sync
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Wed, 5 Nov 2014 10:48:10 +0000 (11:48 +0100)]
ostree-fetcher: remove two unused functions
_ostree_fetcher_query_state_text() and_ostree_fetcher_get_n_requests()
have no callers, so remove them.
If they will be needed, they can be easily copied back from the git
history.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 4 Nov 2014 16:33:41 +0000 (17:33 +0100)]
metalink: have a single entry to the metalink module
Replace _ostree_metalink_request_async with a synchronous version.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Mon, 3 Nov 2014 15:53:19 +0000 (16:53 +0100)]
ostree_fetcher: new function _ostree_fetcher_contents_membuf_sync
Move code from ostree-repo-pull.c
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Matthew Barnes [Mon, 10 Nov 2014 00:54:37 +0000 (19:54 -0500)]
syslinux: Adapt to bootloader UI changes
This was a side-effect of the bootloader UI changes in bug 739416,
but should now be sufficiently future-proofed with code comments.
Giuseppe Scrivano [Mon, 10 Nov 2014 18:48:45 +0000 (19:48 +0100)]
tests: fix intermittent failure for test-sysroot
libtestExec doesn't run twice the same process now.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 4 Nov 2014 18:24:27 +0000 (19:24 +0100)]
ostree-repo-pull: Remove currently #if 0 static delta code
We can readd this in the static deltas work.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Thu, 6 Nov 2014 23:17:52 +0000 (18:17 -0500)]
admin-test: Fix two typos in bootloader UI change
Based on a patch from Giuseppe Scrivano <gscrivan@redhat.com>
Matthew Barnes [Thu, 6 Nov 2014 18:05:01 +0000 (13:05 -0500)]
repo: Remove unused remote-cache dir
Unused leftover from when ostree had pack files; minor cleanup.
https://bugzilla.gnome.org/show_bug.cgi?id=739746
Matthew Barnes [Wed, 5 Nov 2014 20:39:48 +0000 (15:39 -0500)]
Fix GFile leak in ostree_repo_constructed()
Matthew Barnes [Tue, 4 Nov 2014 15:10:31 +0000 (10:10 -0500)]
build: Distribute grub2-15_ostree
Colin Walters [Fri, 10 Oct 2014 17:35:05 +0000 (13:35 -0400)]
commit: Split out file processing into helper function
There should be no logic change here, just reducing indentation.
Matthew Barnes [Thu, 30 Oct 2014 17:44:26 +0000 (13:44 -0400)]
libostree: Reformat bootloader titles
Use the pattern:
$PRETTY_NAME [$COMMIT_VERSION] (ostree[:$OSNAME][:$DEPLOYMENT_INDEX])
$OSNAME is only shown if there are multiple values.
$COMMIT_VERSION refers to the version tag in the commit's metadata.
$DEPLOYMENT_INDEX is only shown if no $COMMIT_VERSION is available.
https://bugzilla.gnome.org/show_bug.cgi?id=739416
Colin Walters [Thu, 30 Oct 2014 18:16:03 +0000 (14:16 -0400)]
Release 2014.11
Giuseppe Scrivano [Thu, 30 Oct 2014 10:05:47 +0000 (11:05 +0100)]
diff: Use gs_unref_object not gs_free on a GFile
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Thu, 30 Oct 2014 09:59:30 +0000 (10:59 +0100)]
pull: Fix a used before initialization warning
src/libostree/ostree-repo-pull.c:1676:22: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Thu, 30 Oct 2014 09:58:50 +0000 (10:58 +0100)]
ostree-repo-pull: Fix inverted assert condition for maxdepth
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Wed, 29 Oct 2014 18:05:59 +0000 (14:05 -0400)]
Release 2014.10
Colin Walters [Mon, 27 Oct 2014 02:46:57 +0000 (22:46 -0400)]
pull: Add depth support
For mirroring in particular, we really want to be able to traverse
all history.
$ ostree --repo=repo pull --mirror --depth=-1
https://bugzilla.gnome.org/show_bug.cgi?id=739240
Colin Walters [Fri, 24 Oct 2014 02:01:33 +0000 (22:01 -0400)]
libostree: Add ostree_repo_pull_with_options()
We potentially need a lot of argument types for pull. Rather than
have a C function with tons of arguments, let's use a GVariant a{sv}
as a handy extensible (and immutable) bag of properties.
This is prepratory work for adding an option to pull to traverse
history.
https://bugzilla.gnome.org/show_bug.cgi?id=737844
Colin Walters [Mon, 27 Oct 2014 16:19:32 +0000 (12:19 -0400)]
grub2: Fix bad substitution in review followup
This caused GRUB2+EFI installations to fail.
Colin Walters [Fri, 24 Oct 2014 17:33:49 +0000 (13:33 -0400)]
Release 2014.9
Giuseppe Scrivano [Thu, 23 Oct 2014 13:38:44 +0000 (15:38 +0200)]
checkout: permit checkout of a single file
fixes a coredump when using a command like:
$ ostree --repo=repo checkout -U --subpath=/usr/lib/passwd \
fedora-atomic/rawhide/x86_64/docker-host usrlib-new
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Fri, 17 Oct 2014 15:46:52 +0000 (11:46 -0400)]
Add (non-atomic) support for GRUB2 + UEFI
We need basic support for UEFI - many newer servers don't support
BIOS compatibility mode anymore.
However, this patch only implements non-atomic because UEFI is FAT, and
we can't do the previous design for OSTree of atomic swap of
/boot/loader.
The Fedora/RHEL UEFI layout has the kernels on a "real" /boot
partition, and /boot/efi/EFI/$vendor just holds the grub2 UEFI binary
and grub.cfg.
Following this, /boot/loader is still on the OS boot partition, and we
still atomically swap it. This potentially paves the way to atomic
upgrades in the future.
https://bugzilla.gnome.org/show_bug.cgi?id=724246
Colin Walters [Wed, 22 Oct 2014 15:07:44 +0000 (11:07 -0400)]
tests: Add some versioning metadata and test it appears in status output
Followup to previous commits.
James Antill [Wed, 22 Oct 2014 05:59:36 +0000 (01:59 -0400)]
admin status: Print the version
James Antill [Wed, 22 Oct 2014 05:23:49 +0000 (01:23 -0400)]
dump: Print the version when dumping a commit, log/show/etc.
James Antill [Wed, 22 Oct 2014 05:21:14 +0000 (01:21 -0400)]
admin: Add ot_admin_checksum_version to get a dup of the version for a commit
Giuseppe Scrivano [Wed, 22 Oct 2014 17:52:12 +0000 (19:52 +0200)]
corrupt-repo-ref.js: more aggressive file corruption
changing only a byte may not generate a corrupted file, so play very
safe and change 10 bytes.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Wed, 22 Oct 2014 16:06:29 +0000 (18:06 +0200)]
fsck: report the correct error when a present file cannot be loaded
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 21 Oct 2014 19:08:15 +0000 (21:08 +0200)]
tests: test-admin-deploy-switch doesn't use deprecated "current" symlink
commit
dfeb27eca55d923c57735e491e438ae54f8cc201 removed it, so change
the test to not use it.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 21 Oct 2014 14:20:58 +0000 (16:20 +0200)]
tests: fix --help test
Check for "Usage" only in the root command, builtins may not output
it.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 21 Oct 2014 09:22:51 +0000 (11:22 +0200)]
make ostree_cmd__private__ ret value const
Colin Walters [Tue, 21 Oct 2014 18:34:04 +0000 (14:34 -0400)]
repo: When writing to a non-root owned repo, chown() objects to match
Some package systems need to be run as root, so the process linking to
libostree may also be root. However, it's reasonable to have the
target repository be owned by a uid other than root.
This patch makes it Just Work by chowning the file content to match.
Note this only operates on archive-z2 repositories, because you can't
usefully serve bare repositories via HTTP.
https://bugzilla.gnome.org/show_bug.cgi?id=738954
Matthew Barnes [Mon, 20 Oct 2014 15:06:51 +0000 (11:06 -0400)]
build: Include SELinux cflags with libostree build too
This is likely another issue with newer automake.
https://bugzilla.gnome.org/738875
Colin Walters [Fri, 17 Oct 2014 15:47:01 +0000 (11:47 -0400)]
Add "ostree remote delete" and corresponding API
For Anaconda, we have an ugly bootstrapping problem where we need to
add the remote to the repository's config, then do a pull+deploy, then
remove and re-add the config, because /etc/ostree/remotes.d doesn't
exist yet in the target system.
https://bugzilla.gnome.org/show_bug.cgi?id=738698
Colin Walters [Thu, 16 Oct 2014 20:54:55 +0000 (16:54 -0400)]
Release 2014.8
Colin Walters [Thu, 16 Oct 2014 18:54:34 +0000 (14:54 -0400)]
repo: Disable uncompressed object cache on non-writable repos
While we did support disabling the uncompressed-objects-cache
per-repository:
1) We didn't actually respect that operation when doing
CHECKOUT_MODE_USER on archive-z2 repositories
2) It'd be better to automatically detect we can't write to the
repo and disable the uncompressed cache then.
Colin Walters [Sat, 11 Oct 2014 12:59:06 +0000 (08:59 -0400)]
libostree: Add initial GRUB2 support
In this approach, we drop a /etc/grub.d/15_ostree file which is a
hybrid of shell/C that picks up bits from the GRUB2 library (e.g. the
block device script generation), and then calls into libostree's
GRUB2 code which knows about the BLS entries.
This is admittedly ugly. There exists another approach for GRUB2 to
learn the BLS specification. However, the spec has a few issues:
https://www.redhat.com/archives/anaconda-devel-list/2014-July/msg00002.html
This approach also gives a bit more control to the admin via the
naming of the 15_ostree symlink; they can easily disable it:
Or reorder the ostree entries ahead of 10_linux:
Also, this approach doesn't require patches for grub2, which is an
issue with the pressure to backport (rpm-)OSTree to EL7.
Giuseppe Scrivano [Tue, 7 Oct 2014 11:10:08 +0000 (13:10 +0200)]
http: set the HTTP status on directory listing
Fix a HTTP response header like the following:
HTTP/1.1 0 (null)
Server: ostree-httpd libsoup/2.48.0
Date: Tue, 07 Oct 2014 11:19:22 GMT
Content-Type: text/html
Content-Length: 12533
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Giuseppe Scrivano [Tue, 7 Oct 2014 10:05:59 +0000 (12:05 +0200)]
tests: do not leave running httpd after tests exit
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Mon, 6 Oct 2014 21:43:02 +0000 (17:43 -0400)]
trivial-httpd: Another followup fix - need to listen on all interfaces
This was the intended design, but it regressed when updating.
Giuseppe Scrivano [Mon, 6 Oct 2014 16:54:18 +0000 (18:54 +0200)]
libostree: fix a gobject-introspection warning
src/libostree/ostree-repo.c:1759: Warning: OSTree:
ostree_repo_import_object_from: unknown parameter 'checksum' in
documentation comment, should be 'sha256'
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Colin Walters [Fri, 3 Oct 2014 23:10:13 +0000 (19:10 -0400)]
Release 2014.7
Colin Walters [Fri, 3 Oct 2014 18:38:30 +0000 (14:38 -0400)]
Add missing file from previous commit
Colin Walters [Tue, 30 Sep 2014 22:12:08 +0000 (18:12 -0400)]
Add "unconfigured-state" concept to origin files
Some operating systems may come with external tools for subscription
management that drive access to the content. In that case, the origin
file may not be useful (for example, it could refer to an installer
ISO).
This patch will allow OS installers to inject that state, with a
useful error message, directing the system administrator to an
external tool.
See: https://github.com/projectatomic/rpm-ostree/issues/31
https://bugzilla.gnome.org/show_bug.cgi?id=737686